Correctly Slicing Finite State Machines
نویسندگان
چکیده
We consider slicing extended finite state machines. Extended finite state machines (EFSMs) combine a finite state machine with a store and can model a range of computational phenomena, from high-level software to cyberphysical systems. They are essentially interactive and may be nondeterministic so standard techniques for slicing, developed for control flow graphs of programs with a functional semantics, are not immediately applicable. They may be placed in parallel but in this paper we consider them only as stand-alone models. This paper provides the first proofs of correctness for control and data dependence based slicing of EFSMs. We express the semantic correctness of slicing as follows. We demand that the sliced machine simulates the original machine, so an “observable” step taken by the latter can also be done by the former. In the other direction, we cannot hope for a perfect simulation, but demand that for each observable step by the sliced machine, either the original machine simulates it or (i) it gets stuck, or (ii) it loops. To ensure correctness, it suffices to demand that the set of transitions in the slice satisfies two conditions: it must be closed under the well-known notion of data dependence, and it must have the “weak commitment” property highlighted by Danicic et alia If the slice also has the “strong commitment” property, the case (ii) above can be ruled out, meaning that the original machine will simulate the sliced machine except that it may get stuck. We provide statements of correctness for each of the properties “weak commitment” and “strong commitment”. We also give algorithms to compute the least sets satisfying each of the properties “weak commitment” or “strong commitment”.
منابع مشابه
Control Dependence for Extended Finite State Machines
Though there has been nearly three decades of work on program slicing, there has been comparatively little work on slicing for state machines. One of the primary challenges that currently presents a barrier to wider application of state machine slicing is the problem of determining control dependence. We survey existing related definitions, introducing a new definition that subsumes one and ext...
متن کاملRestricted cascade and wreath products of fuzzy finite switchboard state machines
A finite switchboard state machine is a specialized finite state machine. It is built by binding the concepts of switching state machines and commutative state machines. The main purpose of this paper is to give a specific algorithm for fuzzy finite switchboard state machine and also, investigates the concepts of switching relation, covering, restricted cascade products and wreath products of f...
متن کاملChecking Properties Described by State Machines: On Synergy of Instrumentation, Slicing, and Symbolic Execution
We introduce a novel technique for checking properties described by finite state machines. The technique is based on a synergy of three well-known methods: instrumentation, program slicing, and symbolic execution. More precisely, we instrument a given program with a code that tracks runs of state machines representing various properties. Next we slice the program to reduce its size without affe...
متن کاملSlicing of UML Models
This paper defines techniques for the slicing of UML models, that is, for the restriction of models to those parts which specify the properties of a subset of the elements within them. The purpose of this restriction is to produce a smaller model which permits more effective analysis and comprehension than the complete model, and also to form a step in factoring of a model. We consider class di...
متن کاملCorrectness of Slicing Finite State Machines
We consider slicing of extended finite state machines. These may be nondeterministic and hence standard techniques for slicing, developed for control flow graphs, are not immediately applicable. In this paper we propose ways of expressing the semantic correctness of slicing. We shall demand that the sliced machine simulates the original machine, in that each “observable” step by the latter can ...
متن کامل